﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using Microsoft.AspNet.Identity;
using Microsoft.AspNet.Identity.EntityFramework;
using Microsoft.AspNet.Identity.Owin;
using Owin;
using CorreoSocialWeb.Models;

namespace CorreoSocialWeb.Envios
{
    public partial class SeleccionarMensajero : System.Web.UI.Page
    {
        private int EnvioId
        {
            get
            {
                return int.Parse(Request["EnvioId"]);
            }
        }

        private int RutaId
        {
            get
            {
                return int.Parse(Request["RutaId"]);
            }
        }

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!this.IsPostBack)
                Views.ReturnUrlHelper.Guardar(this);
        }

        protected void ButtonCancelar_Click(object sender, EventArgs e)
        {
            Views.ReturnUrlHelper.Redireccionar(this);
        }

        public IQueryable GridViewEnvio_GetData()
        {
            return new CorreoSocialDbContext().Envios.Include("TamanoDePaquete").Where(x => x.Id.Equals(this.EnvioId));
        }

        public IQueryable GridViewRuta_GetData()
        {
            var usuarioId = new Views.UsuarioDePaginaHelper().GetUsuarioId(this.Context);

            return Envio.GetRutaDeRankingDeRutas(usuarioId, this.EnvioId, this.RutaId).AsQueryable();
        }

        protected void ButtonConfirmar_Click(object sender, EventArgs e)
        {
            var url = Views.SiteUrlHelper.Get(this, "/Rutas/ConfirmarSolicitudDeEnvio?RutaDeEnvioId={0}");

            Envio.SolicitarRuta(this.EnvioId, this.RutaId, this.TextBoxComentarios.Text, url);

            Response.Redirect("~/Envios/MensajeroSeleccionado");
        }

    }
}